// 乘法

export function mul(arg1, arg2) {
    const r1 = arg1.toString()
    const r2 = arg2.toString()
    let m
    let resultVal
    const d = arguments[2]
    m = (r1.split('.')[1] ? r1.split('.')[1].length : 0) + (r2.split('.')[1] ? r2.split('.')[1].length : 0)
    resultVal = (Number(r1.replace('.', '')) * Number(r2.replace('.', ''))) / Math.pow(10, m)
    return typeof d !== 'number' ? Number(resultVal) : Number(resultVal.toFixed(parseInt(d)))
}
// 除法
export function div(arg1, arg2) {
    const r1 = arg1.toString()
    const r2 = arg2.toString()
    let m
    let resultVal
    const d = arguments[2] || 2
    m = (r2.split('.')[1] ? r2.split('.')[1].length : 0) - (r1.split('.')[1] ? r1.split('.')[1].length : 0)
    resultVal = (Number(r1.replace('.', '')) / Number(r2.replace('.', ''))) * Math.pow(10, m)
    return typeof d !== 'number' ? Number(resultVal) : Number(resultVal.toFixed(parseInt(d)))
}
// 加法
export function add(arg1, arg2) {
    arg1 = arg1.toString()
    arg2 = arg2.toString()
    const arg1Arr = arg1.split('.')
    const arg2Arr = arg2.split('.')
    const d1 = arg1Arr.length === 2 ? arg1Arr[1] : ''
    const d2 = arg2Arr.length === 2 ? arg2Arr[1] : ''
    const maxLen = Math.max(d1.length, d2.length)
    const m = Math.pow(10, maxLen)
    const result = Number(((arg1 * m + arg2 * m) / m).toFixed(maxLen))
    const d = arguments[2]
    return typeof d === 'number' ? Number(result.toFixed(d)) : result
}
// 减法
export function sub(arg1, arg2) {
    return add(arg1, -Number(arg2), arguments[2])
}


export function isWeiXin() {
    const u = navigator.userAgent.toLowerCase()
    let isWeiXin = u.match(/MicroMessenger/i) == 'micromessenger'
    return isWeiXin
}
/**
 * 获取url参数
 * @param {*} variable 想要获取的参数名
 */
export function getQueryVariable () {
    const urlData = window.location.hash
    const data = urlData.indexOf('?') + 1
    const str = urlData.substring(data)
    const strs = str.split('&')
    var returnParam = {}
    strs.forEach(function (param) {
        var paramSplit = param.split('=')
        returnParam[paramSplit[0]] = paramSplit[1]
    })
    return returnParam
}
// 识别客户端的类型
export const browser = (function () {
    var u = navigator.userAgent
    return {
      mobile: !!u.match(/AppleWebKit.*Mobile.*/),
      wx: u.toLowerCase().indexOf('micromessenger') !== -1, // 是否微信
      ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), // ios终端
      android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, // android终端或uc浏览器
      iPhone: u.indexOf('iPhone') > -1, // 是否为iPhone或者QQHD浏览器
      iPad: u.indexOf('iPad') > -1 // 是否iPad
    }
})()

/**
 * 动态获取图片资源（需要将图片放到assets目录下）
 * @param url 图片名称（包含图片后缀）
 * @returns {any} 返回图片路径
 */
export function getAssetsFile  (url){
    // 获取文件夹下所有图片名称
    let files = import.meta.globEager('../assets/**/*.png');
    let AllPics = Object.keys(files).map((v) => v);
    let isExist = 0;
    isExist = AllPics.find((item) => {
        return item.includes(url)
    })
    return files[isExist].default
}
